import cv2
import numpy as np
img=cv2.imread("build.png")
cv2.imshow('Input',img)
gray=cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)
sift=cv2.SIFT_create()              #创建SIFT对象
kp=sift.detect(gray)                  #检测特征点
img=cv2.drawKeypoints(gray,kp,img)  #绘制特征点
cv2.imshow('drawKeypoints',img)     #显示绘制特征点的图像
kp,des=sift.compute(gray,kp)        #计算特征点的特征向量
print("kp.shape：",np.shape(kp))     #显示特征点的数量
print("des.shape：",np.shape(des))   #显示特征向量形状
cv2.waitKey()
cv2.destroyAllWindows()